10z=12:m=z*2:DIMg(m,m):FORy=1TOm-1:FORx=1TOm-1:g(y,x)=192:NEXT,:FORa=&C00TO&C17
20?a=(a?&F73-32)*3:NEXT:r=RND(-TIME):MODE4:PROCa(z,z):VDU31,z-1,z-1,225:*FX4,1
30x=2:y=2:g(y,x)=194:REPEAT:FORb=-1TO1:VDU31,x-2,y+b-1:FORa=-1TO1:v=g(y+b,x+a)
40VDU32+v:NEXT,:g(y,x)=0:k=GET-136:y=y-(k=3)*(g(y-1,x)=0)+(k=2)*(g(y+1,x)=0)
50x=x-(k=0)*(g(y,x-1)=0)+(k=1)*(g(y,x+1)=0):g(y,x)=194:UNTIL(x=z)*(y=z):*FX4,0
60VDU30:FORy=1TOm-1:FORx=1TOm-1:VDU32+g(y,x):NEXT:PRINT:NEXT:r=0:PROCa(2,2):END
70DEFPROCa(x,y):g(y,x)=0:v$="":IFr>0THENg(y-b,x-a)=0 ELSEVDU23,1,-(r=0);0;0;0;
80FORr=1TO7STEP2:b=r DIV3-1:a=r MOD3-1:IFg(y+b*2,x+a*2)<>0THENv$=v$+CHR$(r+64)
90NEXT:l=LEN(v$):IFl=0THENENDPROC ELSEr=INT(RND(1)*l)+1:r=ASC(MID$(v$,r,1))-64
100b=r DIV3-1:a=r MOD3-1:PROCa(x+a*2,y+b*2):GOTO80:REMmmm JJJ 11dd11dd(44JJ J4
